package exception;

/**
 * 异常的抛出
 * 使用throw关键字可以在一个方法中主动对外抛出一个异常给方法调用者解决
 * 通常下述情况我们会主动对外抛出异常
 *
 */
public class Person {
    private int age;


    public int getAge() {
        return age;
    }

    public void setAge(int age) throws IllegalAgeException {
        if(age<0||age>100){
            //主动实例化一个异常并使用throw关键字将其抛出到setAge方法体，由调用该方法的地方处理
            //throw new RuntimeException("年龄不合法");
            //throw new Exception("年龄不合法");
            throw new IllegalAgeException("年龄不合法");
        }
        this.age = age;
    }
}
